12 research outputs found

    Constraint Solving over Multiple Similarity Relations

    Get PDF
    Similarity relations are reflexive, symmetric, and transitive fuzzy relations. They help to make approximate inferences, replacing the notion of equality. Similarity-based unification has been quite intensively investigated, as a core computational method for approximate reasoning and declarative programming. In this paper we consider solving constraints over several similarity relations, instead of a single one. Multiple similarities pose challenges to constraint solving, since we can not rely on the transitivity property anymore. Existing methods for unification with fuzzy proximity relations (reflexive, symmetric, non-transitive relations) do not provide a solution that would adequately reflect particularities of dealing with multiple similarities. To address this problem, we develop a constraint solving algorithm for multiple similarity relations, prove its termination, soundness, and completeness properties, and discuss applications

    Regular matching problems for infinite trees

    Get PDF
    We investigate regular matching problems. The classical reference is Conway's textbook "Regular algebra and finite machines". Some of his results can be stated as follows. Let L⊆(Σ∪X)∗L\subseteq(\Sigma\cup X)^* and R⊆Σ∗R\subseteq\Sigma^* be regular languages where Σ\Sigma is a set of constants and XX is a set of variables. Substituting every x∈Xx\in X by a regular subset σ(x)\sigma(x) of Σ∗\Sigma^* yields a regular set σ(L)⊆Σ∗\sigma(L)\subseteq\Sigma^*. A substitution σ\sigma solves a matching problem "L⊆RL\subseteq R?" if σ(L)⊆R\sigma(L)\subseteq R. There are finitely many maximal solutions σ\sigma; they are effectively computable and σ(x)\sigma(x) is regular for all x∈Xx\in X; and every solution is included in a maximal one. Also, in the case of words "∃σ:σ(L)=R\exists\sigma:\sigma(L)=R?" is decidable. Apart from the last property, we generalize these results to infinite trees. We define a notion of choice function γ\gamma which for any tree ss over Σ∪X\Sigma\cup X and position uu of a variable xx selects at most one tree γ(u)∈σ(x)\gamma(u)\in\sigma(x); next, we define γ∞(s)\gamma_\infty(s) as the limit of a Cauchy sequence; and the union over all γ∞(s)\gamma_\infty(s) yields σ(s)\sigma(s). Since our definition coincides with that for IO substitutions, we write σio(L)\sigma_{io}(L) instead of σ(L)\sigma(L). Our main result is the decidability of "∃σ:σio(L)⊆R\exists\sigma:\sigma_{io}(L)\subseteq R?" if RR is regular and LL belongs to a class of tree languages closed under intersection with regular sets. Such a special case pops up if LL is context-free. Note that "∃σ:σio(L)=R\exists\sigma:\sigma_{io}(L)=R?" is undecidable, in general in that case. However, the decidability of "∃σ:σio(L)=R\exists\sigma:\sigma_{io}(L)=R?" if both LL and RR are regular remains open because, in contrast to word languages, the homomorphic image of a regular tree language is not always regular if σ(x)\sigma(x) is regular for all x∈Xx\in X.Comment: 18 pages. This replacement eliminates a false claim from the previous arXiv version of this paper: Item 4 of Theorem 1 did not hold for # = {=

    Regular matching problems for infinite trees

    Get PDF
    We study the matching problem of regular tree languages, that is, "∃σ:σ(L)⊆R\exists \sigma:\sigma(L)\subseteq R?" where L,RL,R are regular tree languages over the union of finite ranked alphabets Σ\Sigma and X\mathcal{X} where X\mathcal{X} is an alphabet of variables and σ\sigma is a substitution such that σ(x)\sigma(x) is a set of trees in T(Σ∪H)∖HT(\Sigma\cup H)\setminus H for all x∈Xx\in \mathcal{X}. Here, HH denotes a set of "holes" which are used to define a "sorted" concatenation of trees. Conway studied this problem in the special case for languages of finite words in his classical textbook "Regular algebra and finite machines" published in 1971. He showed that if LL and RR are regular, then the problem "∃σ∀x∈X:σ(x)≠∅∧σ(L)⊆R\exists \sigma \forall x\in \mathcal{X}: \sigma(x)\neq \emptyset\wedge \sigma(L)\subseteq R?" is decidable. Moreover, there are only finitely many maximal solutions, the maximal solutions are regular substitutions, and they are effectively computable. We extend Conway's results when L,RL,R are regular languages of finite and infinite trees, and language substitution is applied inside-out, in the sense of Engelfriet and Schmidt (1977/78). More precisely, we show that if L⊆T(Σ∪X)L\subseteq T(\Sigma\cup\mathcal{X}) and R⊆T(Σ)R\subseteq T(\Sigma) are regular tree languages over finite or infinite trees, then the problem "∃σ∀x∈X:σ(x)≠∅∧σio(L)⊆R\exists \sigma \forall x\in \mathcal{X}: \sigma(x)\neq \emptyset\wedge \sigma_{\mathrm{io}}(L)\subseteq R?" is decidable. Here, the subscript "io\mathrm{io}" in σio(L)\sigma_{\mathrm{io}}(L) refers to "inside-out". Moreover, there are only finitely many maximal solutions σ\sigma, the maximal solutions are regular substitutions and effectively computable. The corresponding question for the outside-in extension σoi\sigma_{\mathrm{oi}} remains open, even in the restricted setting of finite trees

    Strategies in PRholog

    Full text link
    PRholog is an experimental extension of logic programming with strategic conditional transformation rules, combining Prolog with Rholog calculus. The rules perform nondeterministic transformations on hedges. Queries may have several results that can be explored on backtracking. Strategies provide a control on rule applications in a declarative way. With strategy combinators, the user can construct more complex strategies from simpler ones. Matching with four different kinds of variables provides a flexible mechanism of selecting (sub)terms during execution. We give an overview on programming with strategies in PRholog and demonstrate how rewriting strategies can be expressed

    P-rho-Log: Combining Logic Programming with Conditional Transformation Systems

    No full text
    P-rho-Log extends Prolog by conditional transformations that are controlled by strategies. We give a brief overview of the tool and illustrate its capabilities
    corecore